/**
 * 行业数据缓存管理
 * 内存级别的缓存，应用重启后清空
 */
import type { IndustryItem } from '../api/resource'

class IndustryCacheManager {
  // 一级行业缓存
  private topListCache: IndustryItem[] | null = null
  
  // 子级行业缓存，key 为父级 ID
  private childrenCache: Map<string, IndustryItem[]> = new Map()
  
  /**
   * 获取一级行业缓存
   */
  getTopList(): IndustryItem[] | null {
    return this.topListCache
  }
  
  /**
   * 设置一级行业缓存
   */
  setTopList(data: IndustryItem[]): void {
    this.topListCache = data
  }
  
  /**
   * 获取子级行业缓存
   */
  getChildren(parentId: string): IndustryItem[] | null {
    return this.childrenCache.get(parentId) || null
  }
  
  /**
   * 设置子级行业缓存
   */
  setChildren(parentId: string, data: IndustryItem[]): void {
    this.childrenCache.set(parentId, data)
  }
  
  /**
   * 清空所有缓存
   */
  clear(): void {
    this.topListCache = null
    this.childrenCache.clear()
  }
}

// 导出单例
export const industryCache = new IndustryCacheManager()


